导航菜单
首页 >  git 报错 error cannot lock ref  > git pull时遇到error: cannot lock ref 'xxx': ref xxx is at (一个commitID) but expected的解决办法

git pull时遇到error: cannot lock ref 'xxx': ref xxx is at (一个commitID) but expected的解决办法

在执行git pull时遇到如下错误:

error: cannot lock ref 'xxx': ref xxx is at (一个commitID) but expected

问题原因

在git pull的时候,本地的分支与远端对应分支的refs对比发现不同,然后导致报错:可能是有人在操作某个分支的时候,git push失败,用了git push –force,导致远端分支被覆盖,使你本地的refs与远端无法保持一致也可能是有人删除掉这个远端分支又重新新建了一个这个分支

解决办法使用git命令删除相应refs文件(推荐)

git update-ref -d refs/将报错信息中的refs分支替换‘refs/’,执行即可

强行git pull

git pull -p

删除有问题的refs

可以直接在.git/refs下面根据错误提示删除对应的refs文件,嫌麻烦直接删除整个refs目录也行(没有尝试过)

原文地址:https://blog.csdn.net/qq_15437667/article/details/52479792

相关推荐: